home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr28 / flpkit11.zip / FLOPTOOL.DOC < prev    next >
Text File  |  1995-03-13  |  35KB  |  604 lines

  1.                ▄▄▄▄▄▄▄  ▄▄▄
  2.                ░░░░░░░  ░░░
  3.                 ░░   ░   ░░    ▄▄▄▄  ▄▄ ▄▄▄  ▄▄ ▄▄▄  ▄▄  ▄▄
  4.                 ░░▄▄     ░░   ▄░░░░▄ ░░▄░░░▄ ░░▄░░░▄ ░░  ░░
  5.                 ░░░░     ░░   ░░  ░░  ░░  ░░  ░░  ░░ ░░  ░░
  6.                 ░░       ░░   ░░  ░░  ░░▄▄░░  ░░▄▄░░ ░░▄▄░░
  7.                ▄░░▄      ░░▄  ░░▄▄░░  ░░░░░   ░░░░░   ░░░░░
  8.                ░░░░      ░░░   ░░░░  ▄░░     ▄░░      ▄▄▄░░
  9.                                      ░░░     ░░░      ░░░░░
  10.  
  11.                                 ▄▄▄▄▄▄                  ▄▄▄
  12.                                 ░░░░░░                  ░░░
  13.                                 ░ ░░ ░   ▄▄▄▄    ▄▄▄▄    ░░
  14.                                   ░░    ▄░░░░▄  ▄░░░░▄   ░░
  15.                                   ░░    ░░  ░░  ░░  ░░   ░░
  16.                                   ░░    ░░  ░░  ░░  ░░   ░░
  17.                                  ▄░░▄   ░░▄▄░░  ░░▄▄░░   ░░▄
  18.                                  ░░░░    ░░░░    ░░░░    ░░░
  19.  
  20.                                          ▄▄▄  ▄▄   ▄▄     ▄
  21.                                          ░░░  ░░   ░░    ▄░
  22.                                           ░░ ▄░░  ▄▄▄   ▄░░▄
  23.                                           ░░▄░░   ░░░   ░░░░
  24.                                           ░░░░     ░░    ░░
  25.                                           ░░░░▄    ░░    ░░ ▄
  26.                                          ▄░░ ░░▄   ░░▄   ░░▄░
  27.                                          ░░░  ░░   ░░░    ░░
  28.  
  29.                                              ▄▄          ▄▄
  30.                                             ▄░░         ▄░░
  31.                                             ░░░         ░░░
  32.                                              ░░          ░░
  33.                                              ░░          ░░
  34.                                              ░░    ▄▄    ░░
  35.                                            ▄▄░░▄▄  ░░  ▄▄░░▄▄
  36.                                            ░░░░░░  ░░  ░░░░░░
  37.  
  38.  
  39.                                               William Luitje
  40.                                                13 March 1995
  41.  
  42.         This is a collection of 8 small utilities which will help you use 
  43.         your  floppy  disks more effectively.   Since you probably  worry 
  44.         more  about  how to get better speed and storage out of your hard 
  45.         disk,   this  may  not  be a matter of pressing concern  to  you.  
  46.         However,  floppies are going to be used for quite a while and  by 
  47.         spending  a few minutes with these utilities you can make  things 
  48.         go a  little bit faster each time you use a floppy.  Programs are 
  49.         provided to 
  50.  
  51.           ■ set the mechanical parameters of operation for your floppies
  52.  
  53.           ■ test for the maximum reliable step rate of a floppy drive
  54.  
  55.           ■ test a drive or disk for read errors
  56.  
  57.           ■ measure the seek performance of a floppy system
  58.  
  59.           ■ determine the optimal skewing parameters for formatting disks
  60.  
  61.           ■ test the rotational speed of a drive for accuracy
  62.  
  63.           ■ show the formatting parameters for a floppy disk
  64.  
  65.           ■ aid in the use of a head cleaning disk
  66.  
  67.        ┌─────────────────────────────────────────────────────────────────┐
  68.        │▒▒▒ FLOPPARM ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  69.        └─────────────────────────────────────────────────────────────────┘
  70.  
  71.         Floppies  have  been  around a long time and have  been  improved 
  72.         since they first came out, not only in capacity but also in their 
  73.         mechanical  speed and  accuracy.  Unfortunately,  system software 
  74.         can't tell what the  best speed to drive a floppy is and must  be 
  75.         compatible  with  old  drives  and  so uses  conservatively  slow 
  76.         parameters.    When  accessing  a  floppy,  the BIOS uses a table 
  77.         called  the  Diskette  Parameter  Table  for  these   parameters.  
  78.         Interrupt vector 1E contains the address of this table.  Since it 
  79.         is  usually  set up in RAM by DOS,  it is easy to modify  it  for 
  80.         modern, fast drives.  FLOPPARM will do this for you conveniently; 
  81.         simply run it  with one of the three arguments SLOW,  MEDIUM,  or 
  82.         FAST.  The parameters which are affected are: 
  83.  
  84.           ■ step  rate and head unload time, which  are parameters of the 
  85.             disk controller chip. 
  86.  
  87.           ■ head settle time,  which is the amount of time the BIOS takes 
  88.             after stepping from one track to another to wait for the head 
  89.             mechanism to stop vibrating. 
  90.  
  91.           ■ motor startup time,  which is the amount of time taken by the 
  92.             BIOS  to allow the spindle motor speed to stabilize after  it 
  93.             first starts up. 
  94.  
  95.         SLOW is provided for compatibility with really old drives; MEDIUM 
  96.         is somewhat faster than DOS 5;  and FAST is pedal to metal!  When 
  97.         run, FLOPPARM displays the parameters used.  If run with no or an 
  98.         illegal  argument,   FLOPPARM will display a usage hint  and  the 
  99.         current values of the parameters. 
  100.  
  101.         FLOPPARM also allows you to specify your own parameters by  using 
  102.         the  CUSTOM  argument  followed by an equals sign  and  the  four 
  103.         parameters  (step rate,  head unload time,  head settle time  and 
  104.         motor startup time) separated by commas (no spaces allowed).  For 
  105.         example a command equivalent to FLOPPARM MEDIUM would be 
  106.  
  107.         flopparm custom=13,15,1,2 
  108.  
  109.         Legal values for step rate and head unload time are from 1 to 15.  
  110.         Legal values for head  settle  time  (in milliseconds)  and motor 
  111.         startup time (in 1/8s of a second) are from 1 to 255.  
  112.         
  113.         How do you decide what custom values to use?  Obviously, to speed 
  114.         up  operation,  increase step rate and decrease head unload time, 
  115.         head  settle  time and motor startup time.   Since motor  startup 
  116.         time is given in eighths of a second and the other parameters are 
  117.         given  in milliseconds,  it seems like a good place to look for a 
  118.         speed increase.   I've had no problems setting it to one and that 
  119.         produces  a noticeable reduction in the time you have to wait for 
  120.         the floppy when the motor is off. 
  121.  
  122.         I've  provided two utilities to help in testing your settings for 
  123.         the rest of the parameters, TESTSTEP and FLOPTEST.  These will be 
  124.         described in subsequent sections.   In any case,  once you decide 
  125.         which  parameters to use,  just put a line invoking  FLOPPARM  in 
  126.         your  AUTOEXEC.BAT  file  and enjoy a modest increase  in  floppy 
  127.         speed. 
  128.         
  129.         NOTES: FLOPPARM is not a TSR and does not take up any DOS memory; 
  130.         it  simply  modifies  a table in RAM which is already  created by 
  131.         DOS.   Also,  there is only one table to control the operation of 
  132.         all  of  the  floppy drives in your system;  make  sure that your 
  133.         slowest drive can handle the parameters you set. 
  134.  
  135.        ┌─────────────────────────────────────────────────────────────────┐
  136.        │▒▒▒ TESTSTEP ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  137.        └─────────────────────────────────────────────────────────────────┘
  138.  
  139.         Use TESTSTEP to find the fastest step rate which can be used with 
  140.         a  particular floppy drive.  It starts with the highest  possible 
  141.         step  rate,   15,  and then does a large number of seeks  on  the 
  142.         selected drive to see if that rate is too fast.   If so, then the 
  143.         step  rate is lowered and the test retried until all of the seeks 
  144.         can be done without error. 
  145.  
  146.         To run this test you must use  a floppy  which has been formatted 
  147.         with no errors at the standard size for that drive.  For example, 
  148.         if  you are testing a 5¼"  High Density drive you must use a  1.2 
  149.         Meg disk,  not a 360K disk.  Similarly,  you shouldn't use a 720K 
  150.         disk in a 3½" High Density drive or vice versa. 
  151.  
  152.         This  test appears to be very stringent;  no drive which  I  have 
  153.         tested  has  passed it with a step rate of 15.   However,  during 
  154.         normal  use  most floppies seem to work at that  rate,   probably 
  155.         because the seeks are not as severe.   You can be sure that if it 
  156.         passes this test it will work reliably during normal use. 
  157.  
  158.         Note that this program by doesn't test the head unload  and  head 
  159.         settle  times  at  all.   You can test these indirectly with  the 
  160.         FLOPTEST utility described in the next section. 
  161.  
  162.         TESTSTEP takes one argument,  the drive letter.  Only A and B are 
  163.         supported at this time.  Here is an example command and result. 
  164.  
  165.           teststep b
  166.  
  167.           Test Maximum Floppy Step Rate, Ver 1.0 by luitje@m-net.arbornet.org
  168.  
  169.           Drive B: has 80 tracks; current Step Rate is 13
  170.  
  171.           Testing Step Rate = 15:  failed
  172.           Testing Step Rate = 14:  failed
  173.           Testing Step Rate = 13:  passed
  174.  
  175.        ┌─────────────────────────────────────────────────────────────────┐
  176.        │▒▒▒ FLOPTEST ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  177.        └─────────────────────────────────────────────────────────────────┘
  178.  
  179.         FLOPTEST  provides a practical test of whether you have set  your 
  180.         floppy  drive parameters too fast.   It will simply seek to every 
  181.         track of the disk,  read a sector and report any errors it finds.  
  182.         The seek pattern is called a "butterfly test"  since it reads the 
  183.         first track, then the last track, then the second track, then the 
  184.         next  to  last track,  etc.   This will really give the  drive  a 
  185.         workout! 
  186.  
  187.         This test requires a formatted floppy which has no  bad  sectors. 
  188.         (FLOPTEST  can't tell if an error is due to the drive not working 
  189.         properly  or  due to a bad disk).   It is a read only test so  it 
  190.         shouldn't change any data on the disk.  There are two parameters: 
  191.         one is the drive letter and the second is the number of passes to 
  192.         run.  If you get any errors and your floppy is ok then you should 
  193.         back  off  one or more of the floppy drive  parameters  and  test 
  194.         again. Here is an example 
  195.  
  196.           floptest a 20 
  197.  
  198.         If you are fortunate enough to have more than 2 disk drives (this 
  199.         applies  both  to  FLOPTEST and to the other  utilities  in  this 
  200.         package, except where noted), you can refer to the third drive as 
  201.         c and the  fourth drive as d,  even if you have a hard drive that 
  202.         goes by either of those names.  I know this is confusing but this 
  203.         test operates at the  BIOS  level and has no idea what letter DOS 
  204.         has assigned to your third and fourth floppies.   I  had a choice 
  205.         of  confusing  people  who  had  more than  2  floppy  drives  or 
  206.         confusing everybody by making you specify the drive with a number 
  207.         rather than a letter.  That's life. 
  208.  
  209.         You  can  also use FLOPTEST to see if a floppy disk has  any  bad 
  210.         sectors.    If  you run it with only the drive letter  specified, 
  211.         then  it will attempt to read every sector  (linearly,   starting 
  212.         with track 0) and report any failures.  Since FLOPTEST makes only 
  213.         one attempt to read each sector,  it will warn you if a sector is 
  214.         getting  weak.   I  use this feature a lot before putting any new 
  215.         information  on an old disk.   If the disk has errors,  I  either 
  216.         reformat it or throw it away. 
  217.  
  218.        ┌─────────────────────────────────────────────────────────────────┐
  219.        │▒▒▒ SEEKBNCH ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  220.        └─────────────────────────────────────────────────────────────────┘
  221.  
  222.         Once  you have your parameters set as you like them you  can  use 
  223.         SEEKBNCH  to  measure  how fast your drive  will  seek  with  the 
  224.         controller  set  to  the  current  step  rate parameter. SEEKBNCH 
  225.         performs three benchmarks: 
  226.  
  227.           ■ track to track seek time
  228.  
  229.           ■ average seek time
  230.  
  231.           ■ full stroke seek time
  232.  
  233.         The  step  rate should be set either by default or  via  FLOPPARM 
  234.         before this test is run (head settle time is ignored).   However, 
  235.         do  not use a step rate faster than that passed by TESTSTEP.   At 
  236.         best  the  results  will be meaningless and at  worst  you  might 
  237.         damage your drive. 
  238.         
  239.         To  run  the  benchmark  you will need  an  error-free  formatted 
  240.         floppy.  SEEKBNCH takes one parameter,  the drive letter (only  A 
  241.         and B are supported).  Here's a sample command and sample output. 
  242.  
  243.           seekbnch a
  244.  
  245.           Floppy Disk Seek Benchmark, Ver 1.0 by luitje@m-net.arbornet.org
  246.  
  247.           Drive A: has 80 tracks; current Step Rate is 14
  248.  
  249.           Track to track seek time:   3.0 mSecs
  250.           Average seek time:         81.7 mSecs
  251.           Full Stroke seek time:    309.5 mSecs
  252.  
  253.        ┌─────────────────────────────────────────────────────────────────┐
  254.        │▒▒▒ FLOPSKEW ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  255.        └─────────────────────────────────────────────────────────────────┘
  256.  
  257.         The most important improvement you can make in using your  floppy 
  258.         drives  is  to  format  your disks using  FDFORMAT  by  Christoph 
  259.         Hochstätter or  ATFMT by Oleg Kibirev.   They can be found on the 
  260.         Internet   in  any  of  the  SimTel  archives  in  the  directory 
  261.         msdos/diskutil. These programs allow almost complete control over 
  262.         how your disks are formatted.  Among other things, you can put up 
  263.         to 820K on 5¼" DSDD disks, 1.48 meg on 5¼"  HD disks and 1.7  meg 
  264.         on 3½" HD disks.   In terms of speeding up floppy disk transfers, 
  265.         these programs allow you  to control the way sectors are arranged 
  266.         on  a track.   This concept is called  sector sliding by FDFORMAT 
  267.         and  sector  spinning by ATFMT;  in the US it's known  as  sector 
  268.         skewing.    Basically,   the  idea is that since  there  is  some 
  269.         mechanical delay in changing heads  or tracks it may be desirable 
  270.         to put the first sector of a new  head or track  "later"   in the 
  271.         track so the computer doesn't have to wait for the floppy to make 
  272.         a complete revolution before that sector can be read.   See these 
  273.         programs' documentation for more details on how this works.   The 
  274.         time savings when  reading or writing a floppy can be substantial 
  275.         when you format it using  the optimal skew parameters and,  as an 
  276.         added benefit, formatting is faster, too. 
  277.  
  278.         You  can  specify head skew and track skew in both  FDFORMAT  and 
  279.         ATFMT by the X and Y parameters,  respectively.   The DOS  FORMAT 
  280.         program  does  not  support  sector  skewing  at  all;   this  is 
  281.         equivalent  to  using FDFORMAT or ATFMT with X and Y both set  to 
  282.         zero.    But  what  values should you use for  these  parameters?  
  283.         Well,   when FDFORMAT first introduced this feature,  I  wrote  a 
  284.         batch file which formatted a test disk with various  combinations 
  285.         of the head and sector skew parameters and then measured how long 
  286.         it  took  to copy a large file to the floppy.   It took about  an 
  287.         hour to run and tested 16 combinations of X and Y values for just 
  288.         one  disk  format.    FLOPSKEW does the same job in  just  a  few 
  289.         seconds but tests even more combinations of parameter values. 
  290.         
  291.         To  use FLOPSKEW,  first decide which setting of FLOPPARM to  use 
  292.         and then run FLOPPARM with that parameter since the step rate and 
  293.         head settle time will both affect skewing.   Then,  format a disk 
  294.         of  the type and capacity for which you want to find the  optimal 
  295.         skewing  parameters  with  the  X and Y  parameters  both  0  and 
  296.         interleave 1.   Although FLOPSKEW is a non-destructive test,  you 
  297.         should  use  a  freshly  formatted  disk  to  ensure  that  these 
  298.         parameters  are  set  correctly,  otherwise the  test  will  give 
  299.         strange  results.    If you don't specify X and Y,  FDFORMAT  and 
  300.         ATFMT  default to the correct values except that they  both  must 
  301.         use  an interleave of 2 for the 5¼"  1.44  meg and 3½"  1.7   meg 
  302.         formats  (and for this reason it doesn't make sense to use sector 
  303.         skewing  with these formats).  DOS FORMAT always formats with  no 
  304.         sector skewing and interleave 1. 
  305.  
  306.         Then, simply run FLOPSKEW with the drive letter of the floppy you 
  307.         want to test as the only parameter.   Here is an example  command 
  308.         and  its  results  for a double density (720K)  3½"  disk  on  my 
  309.         system: 
  310.  
  311.           flopskew b
  312.  
  313.           Find Optimal Head & Track Skew, Ver 1.0
  314.           9 Sectors/Track, 80 Tracks, 2 Sides
  315.  
  316.           Head Skew Times (milliseconds):
  317.           X:       0   1   2   3   4   5   6   7   8
  318.           Time:   32  54  74  95 116 137 158 178 199
  319.  
  320.           Track Skew Times (milliseconds):
  321.           Y:       0   1   2   3   4   5   6   7   8
  322.           Time:  232  53  74  95 116 137 158 178 199
  323.  
  324.           Interleave:  1
  325.           Minimum skewing parameters:  X=0, Y=1
  326.           Recommended skewing parameters:  X=1, Y=2
  327.  
  328.         First  you are shown the format of the test diskette,  then  some 
  329.         test results and finally the recommended skewing parameters.   If 
  330.         you  are interested in some technical details about the test  you 
  331.         should read the next few paragraphs; otherwise you can skip ahead 
  332.         to  the  next section.   Just use the recommended  parameters  to 
  333.         format  your disks and expect your diskette throughput to  become 
  334.         about 30% faster. 
  335.  
  336.         Two  tests  are  run to find the best values for  the  Head  Skew 
  337.         parameter  (X)  and the Track Skew parameter (Y).  The head  skew 
  338.         test  is run by reading the last sector of the first track  using 
  339.         head 0 and then measuring how long,  in milliseconds, it takes to 
  340.         read  the first sector of that same track with head 1.   (If  the 
  341.         disk is formatted with only one side this test is not run.)   The 
  342.         track  skew  test is run by reading the last sector of the  first 
  343.         track  using  head 1 (if testing a double sided disk)   and  then 
  344.         measuring  how  long  it takes to read the first  sector  of  the 
  345.         second track using head 0.  In the results above, the second line 
  346.         tells  how  long this took,  in milliseconds,  for  each  of  the 
  347.         sectors on the second track read. 
  348.         
  349.         Let's look at the example data to see what we can learn.   First, 
  350.         notice  that the times to read different sectors in the head skew 
  351.         test increase by about 22 milliseconds.  This is just the time it 
  352.         takes to read one sector for this format.  The formula is 
  353.  
  354.           sector read time(ms) = 1000 * 60sec/min * rpm / sectors 
  355.  
  356.         For  this  format the drive rotates at 300  rpm and there  are  9 
  357.         sectors  so  the  time  to  read  a  sector  works  out  to  22.2 
  358.         milliseconds.  This formula can be modified to figure the time to 
  359.         read  an entire track by dropping the final division by  sectors.  
  360.         In this case, it is 200 ms.  
  361.         
  362.         To  determine the best values for X and Y,  the program finds the 
  363.         smallest  time  and the corresponding number of  sectors  skipped 
  364.         from the line above.  The data show that for my system no sectors 
  365.         should  be  skipped when changing heads so the optimal head  skew 
  366.         parameter,  X, is 0.  Typical values are 0 or 1 for most systems.  
  367.         Now  look at the results for the track skewing test;  the time to 
  368.         change tracks without skipping any sectors is 232!   This is  the 
  369.         time  it  takes to read a whole track plus the sector  plus  some 
  370.         overhead.   In this case the 0 sector skew provided by DOS format 
  371.         and  the  default values used by FDFORMAT and ATFMT yield  a  big 
  372.         waste  of  time when reading or writing multiple tracks.   On  my 
  373.         system the optimal track skew parameter, Y, is 1.  Typically,  it 
  374.         ranges from 1 to 3 on the systems I have looked at. 
  375.  
  376.         Now  notice  that  the program recommends  values  for  the  skew 
  377.         parameters which are 1 greater than the optimal values.   This is 
  378.         because the penalty for choosing a skew value which is too  small 
  379.         is severe:  you have to wait a whole revolution, in this case 200 
  380.         ms,   when changing tracks.   On the other hand,  the penalty for 
  381.         having a skew value which is one too big is only 22  ms.    Since 
  382.         some  software  may introduce an additional delay  when  changing 
  383.         tracks,   it  is a safe bet to be conservative when choosing  the 
  384.         skew values.   If you regularly use floppies on two computers you 
  385.         should  run FLOPSKEW on both of them and choose the higher of the 
  386.         recommended skew parameters. 
  387.  
  388.         Take  the values of X and Y found by the above procedure and  use 
  389.         them to format your floppies in the future.   To make this  easy, 
  390.         you  can create a batch file,  4DOS or CED alias,  or FDFORMAT or 
  391.         ATFMT  configuration file with those parameters in it.   Any time 
  392.         you format a floppy or read or write a floppy formatted this  way 
  393.         it will go faster.  
  394.  
  395.         How much faster?   Well,  assuming the most likely case that only 
  396.         track  seek is a problem and that the sector skewing is only  off 
  397.         by  1 or 2,  then on average the computer has to wait for a  full 
  398.         disk revolution every second track it reads.   Eliminate the wait 
  399.         and  you  can reduce the time spent reading and writing  by  1/3.  
  400.         When  formatting  a  diskette,  skewing only affects  the  verify 
  401.         operation so the time reduction is somewhat less, about 20%. 
  402.  
  403.        ┌─────────────────────────────────────────────────────────────────┐
  404.        │▒▒▒ FLOPRPM ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  405.        └─────────────────────────────────────────────────────────────────┘
  406.  
  407.         If   you  are  having  trouble  reading  or  writing   diskettes, 
  408.         especially with a large number of sectors per track,  the problem 
  409.         may  lie with the speed at which the drive spins.   FLOPRPM  will 
  410.         test  this condition for you.   Simply place a formatted disk  in 
  411.         the  drive you want to test and run FLOPRPM with the drive letter 
  412.         as the only argument.  The program will then test and display the 
  413.         rotation rate continuously until you press a key.   Normally, all 
  414.         PC floppy drives will run within  an RPM or two of 300 except for 
  415.         5¼"  HD drives which run at 360.   If you are having problems and 
  416.         the  speed  of your drive is off by more  than that or the  speed 
  417.         varies  a  lot,   you may  be able  to get  better  operation  by 
  418.         adjusting the speed  of your drive.   Unfortunately,  no  general 
  419.         guidelines  can  be  given  about how to do that  because  drives 
  420.         differ in their design. 
  421.  
  422.        ┌─────────────────────────────────────────────────────────────────┐
  423.        │▒▒▒ FLOPINFO ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  424.        └─────────────────────────────────────────────────────────────────┘
  425.  
  426.         This program  simply  reads the formatting information of  a disk 
  427.         and displays it.   With all of the different formats supported by 
  428.         FDFORMAT  and  ATFMT it's nice to know what format  a  particular 
  429.         disk  is.    Also,  since some of these formats require a TSR  to 
  430.         read,   you might want to know if a particular floppy can be read 
  431.         on  another  system  which  doesn't  have  a  copy  of  that  TSR 
  432.         available.   Or,  perhaps you want to quickly find out whether  a 
  433.         floppy is HD or DD. 
  434.         
  435.         FLOPINFO  takes  one parameter,  the drive letter.   Here  is  an 
  436.         example command and response, this time for a 1.4M 3½" disk. 
  437.  
  438.   flopinfo b
  439.  
  440.   ╔═════════════════════════════════════════════════════════════════════════╗
  441.   ║     Floppy Disk Information, Ver. 1.1 by luitje@m-net.arbornet.org      ║
  442.   ╠═══════╤════════╤═══════════╤═══════════╤═════════════╤══════════╤═══════╣
  443.   ║ Sides │ Tracks │ Sec/Track │ Bytes/Sec │ Res/Hid Sec │ Root Dir │ Media ║
  444.   ╟───────┼────────┼───────────┼───────────┼─────────────┼──────────┼───────╢
  445.   ║   2   │   80   │    18     │    512    │    1 / 0    │   224    │   F0  ║
  446.   ╠═══════╧════╤═══╧═══════════╪═══════════╧═╤═══════════╧╤══════╤══╧═══════╣
  447.   ║  OEM Name  │  Volume Name  │ Vol Ser Num │  FAT Type  │ FATs │ Capacity ║
  448.   ╟────────────┼───────────────┼─────────────┼────────────┼──────┼──────────╢
  449.   ║ "MSDOS5.0" │ "NO NAME    " │  04DA-F7FE  │ "FAT12   " │   2  │  1457664 ║
  450.   ╚════════════╧═══════════════╧═════════════╧════════════╧══════╧══════════╝
  451.  
  452.         The  Volume  Name displayed is from the boot  sector;   there  is 
  453.         another  one in the root directory which may be different.    The 
  454.         Volume Name, Volume Serial Number and FAT Type are not present on 
  455.         disks  formated  with  versions  of DOS prior  to  4.0   and  are 
  456.         displayed as dots in that case.  The "Res/Hid Sec"  box shows two 
  457.         numbers,  the number of reserved and hidden sectors.   "Root Dir" 
  458.         shows the number of files allowed in the root directory.  "Media" 
  459.         is the media descriptor byte. 
  460.  
  461.        ┌─────────────────────────────────────────────────────────────────┐
  462.        │▒▒▒ FLOPSCRB ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  463.        └─────────────────────────────────────────────────────────────────┘
  464.  
  465.         If you've ever bought one of those inexpensive disk cleaning kits 
  466.         you've  probably  noticed that the instructions which  come  with 
  467.         them are kind of skimpy.   Something like:  "squirt some cleaning 
  468.         fluid  on  the  cleaning disk and then operate the drive  for  10 
  469.         seconds". But how do you "operate the drive"? 
  470.  
  471.         You  could  use the dir command but it will time out with a  read 
  472.         error  after  a  few  seconds so  you  have  to  keep  re-issuing 
  473.         commands.   Even worse,  the dir command only tries to read track 
  474.         zero  so  you  are  only using a small portion  of  the  cleaning 
  475.         surface.  Or you could use other programs which access the  disk, 
  476.         like format, but they all have the same problems:  it's difficult 
  477.         to  control how long the cleaning is done and which part  of  the 
  478.         cleaning disk is used. 
  479.  
  480.         FLOPSCRB  takes care of these problems and in addition  may allow 
  481.         the cleaning disk to be used longer because of the way it manages 
  482.         the cleaning process.  FLOPSCRB cleans the drive in three stages.  
  483.         The  first stage uses the outside third (which  has  the  largest 
  484.         area)   of  the  cleaning disk.   This removes the worst  of  the 
  485.         accumulated oxide.  The second stage moves to the middle third of 
  486.         the  disk  where any remaining particles are moved.    The  third 
  487.         stage moves to the inner third of the cleaning disk to finish the 
  488.         job.   With this sequence the head becomes progressively  cleaner 
  489.         instead  of  just  rubbing  dirt off on  the  cleaning  disk  one 
  490.         revolution and then picking it up the next. 
  491.  
  492.         FLOPSCRB only needs to be told which drive to clean (only A and B 
  493.         are  supported  at this time)  and how long to run  the  cleaning 
  494.         action.    To clean drive a for 15  seconds (5  seconds for  each 
  495.         stage) you'd use the following command: 
  496.  
  497.           flopscrb a 15
  498.  
  499.         NOTE:  The abrasiveness of the cleaning pads may vary from kit to 
  500.         kit  so  always  follow  the  manufacturer's  instructions  about 
  501.         cleaning time. It may be possible to damage the floppy drive head 
  502.         by cleaning the drive excessively. 
  503.  
  504.        ┌─────────────────────────────────────────────────────────────────┐
  505.        │▒▒▒ Acknowledgements ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  506.        └─────────────────────────────────────────────────────────────────┘
  507.  
  508.         Outside  of the cryptic documentation for the NEC µPD765A  floppy 
  509.         disk  controller  chip there is not a whole  lot  of  information 
  510.         available  about the nitty gritty of controlling floppies.    I'd 
  511.         like  to thank two freeware authors who have  written  worthwhile 
  512.         programs  and then published the source code for others to  learn 
  513.         from.   Christoph  Hochstätter's FDFORMAT provides  lots  of good 
  514.         examples of code for using the BIOS INT 13 calls and creating the 
  515.         basic  disk  structure (it also lets you learn  a  little  German 
  516.         along the way).  The 2M package by Ciriaco de Celis provides some 
  517.         utilities  which really push the envelope of putting the  maximum 
  518.         amount  of  information  on a floppy disk.   I  needed  to  issue 
  519.         commands directly to the floppy drive controller to make FLOPSCRB 
  520.         work and I learned how to  do  this (and some Spanish) by reading 
  521.         his source code.   Understanding these programs can be slow going 
  522.         if  you  don't  understand German and Spanish but it  sure  beats 
  523.         disassembling  your  BIOS!  Look for them in  the  msdos/diskutil 
  524.         directory of your local SimTel mirror. 
  525.  
  526.        ┌─────────────────────────────────────────────────────────────────┐
  527.        │▒▒▒ Distribution ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  528.        └─────────────────────────────────────────────────────────────────┘
  529.  
  530.         The programs and documentation in the Floppy Tool Kit package are 
  531.         copyrighted  works  of William Luitje.   The author grants you  a 
  532.         non-exclusive license to copy and distribute these  works as long 
  533.         as they are distributed as a group with no additional files added 
  534.         to  the  archive  (this includes BBS ads)  and the  programs  and 
  535.         documentation are not modified in any way. 
  536.  
  537.         On a related note, I am distributing these programs for free.  If 
  538.         you paid money for a floppy or CD-ROM with these programs on  it, 
  539.         be  aware that I am not seeing a penny of it.   What you paid for 
  540.         is the service of distribution.  I'm sure that you understand the 
  541.         nature of transactions like that but I have heard from people who 
  542.         "bought  one  of  my  programs"   and  expect  me  to  conduct  a 
  543.         correspondence course on basic PC  techniques,  theory and repair 
  544.         because  of  their  "purchase".   While I am always open  to  bug 
  545.         reports and well  thought out questions (and postcards!),  please 
  546.         read  the  documentation carefully and check with  local  experts 
  547.         before you fire up your word processor. 
  548.  
  549.        ┌─────────────────────────────────────────────────────────────────┐
  550.        │▒▒▒ Liability ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  551.        └─────────────────────────────────────────────────────────────────┘
  552.  
  553.         This  software  is intended to be safe to use.    All  tests  and 
  554.         information  programs are read only so no data on your test disks 
  555.         should be altered. FLOPSCRB and SEEKBNCH could conceivably damage 
  556.         a drive if used inappropriately but I abused  my  drives quite  a 
  557.         bit while writing and  debugging  these  programs and haven't had 
  558.         any  problems.    About the only other problem you might have  is 
  559.         that if you set the floppy drive parameters  too fast you may get 
  560.         read or write errors.  Never the less, in using this software you 
  561.         assume all risk should anything go wrong.  I think that is pretty 
  562.         unlikely, but, hey, sometimes it rains fish! 
  563.  
  564.        ┌─────────────────────────────────────────────────────────────────┐
  565.        │▒▒▒ Registration ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  566.        └─────────────────────────────────────────────────────────────────┘
  567.  
  568.         While this software may be freely copied and used,  I  do request 
  569.         that  you  register  it if you use it.   Just send  me  either  a 
  570.         postcard or some e-mail telling me which programs you find useful 
  571.         and  which version of the package you are using.   This  is  only 
  572.         partially an ego massage for the author.   I enjoy writing useful 
  573.         utilities and have several other pieces of freeware out  floating 
  574.         around  the  net so I would like feedback about which of them are 
  575.         worth expanding and supporting. 
  576.  
  577.         William Luitje
  578.         2677 Wayside Drive
  579.         Ann Arbor, MI 48103
  580.         USA
  581.  
  582.         Internet:  luitje@m-net.arbornet.org
  583.  
  584.        ┌─────────────────────────────────────────────────────────────────┐
  585.        │▒▒▒ History ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│
  586.        └─────────────────────────────────────────────────────────────────┘
  587.  
  588.         Version 1.0 20 Jan 94
  589.            First  release with FLOPPARM, FLOPTEST, FLOPSKEW,  FLOPRPM and 
  590.              FLOPINFO
  591.         Version 1.1 13 Mar 95
  592.            Changes to FLOPPARM:  tweaked FAST parameters, changed 
  593.              allowable ranges of parameters
  594.            Changes to FLOPINFO:  added volume name, volume serial number, 
  595.            FAT type, hidden sectors and media byte to output.  Reorganized 
  596.              display for readability.
  597.            Minor internal changes to the rest of the programs.
  598.            Added TESTSTEP
  599.            Added SEEKBNCH
  600.            Added FLOPSCRB
  601.  
  602.         Copyright 1994-1995 by William Luitje
  603.  
  604.